Stirling PDF 安装与使用 – 强大的PDF操作工具,满足您的需求

共计 4096 个字符,预计需要花费 11 分钟才能阅读完成。

最近我发现了这个 Stirling PDF 项目,正好我可以写一篇记录一下,也可以给我自己的工具网站增加工具来使用。

最后修改:2024SEP07

Stirling PDF 简介

Stirling PDF 基于 Web 的 PDF 操作工具。能够对PDF文件进行各种操作,包括分割、合并、转换、重组、添加图像、旋转、压缩等。支持多语言,功能还是挺多的。

GitHub地址:https://github.com/Stirling-Tools/Stirling-PDF

其他Docker项目:Cryptgeon安装教程,阅后即焚的共享笔记或文件服务。

Stirling PDF 安装

需要安装 Docker、Docker-compose环境,如果已经有跳过这个。

安装 Docker、Docker-compose环境:https://blog.ioacx.com/docker

创建项目文件夹

sudo -i 
mkdir -p /root/data/docker_data/stirling_pdf

进入文件夹

cd /root/data/docker_data/stirling_pdf

创建文件修改

vim docker-compose.yml

按 i 修改,修改完成后按 ESC,输入 :wq 保存退出。

填入以下内容:

version: '3.3'
services:
  stirling-pdf:
    image: frooodle/s-pdf:latest
    ports:
      - '8080:8080' # 端口
    volumes:
      - /location/of/trainingData:/usr/share/tessdata #Required for extra OCR languages
      - /location/of/extraConfigs:/configs
#     - /location/of/customFiles:/customFiles/
#     - /location/of/logs:/logs/
    environment:
      - DOCKER_ENABLE_SECURITY=false
      - INSTALL_BOOK_AND_ADVANCED_HTML_OPS=false
  • 如果您想要启用用户登录模式,请将DOCKER_ENABLE_SECURITY设置为true,并参考https://github.com/Stirling-Tools/Stirling-PDF上的Login authentication”来进行设置。默认情况下,该值为false。
  • INSTALL_BOOK_AND_ADVANCED_HTML_OPS也可以保持默认值。这个选项会将calibre下载到stirling-pdf,以支持PDF到书籍和高级HTML转换。如果您需要这些功能,请打开该选项。
  • 端口为8080,按需要修改(8080端口被占用),可保持默认

在docker-compose.yml目录下输入

docker-compose up -d 

等待一下,然后访问ip地址:设置的端口,我这里设置的端口是8080,所以访问ip地址:8080

如果无法打开请查看是否没有打开防火墙

可以看到:

Stirling PDF 安装与使用 - 强大的PDF操作工具,满足您的需求

Stirling PDF 使用

语言设置:

Stirling PDF 安装与使用 - 强大的PDF操作工具,满足您的需求

可以使用的功能挺多的这里就不一一介绍了。可以看下图:

Stirling PDF 安装与使用 - 强大的PDF操作工具,满足您的需求

定制化 Stirling PDF

Stirling PDF 允许轻松定制应用程序。包括类似的东西

  • 自定义应用程序名称
  • 自定义标语、图标、图像,甚至自定义 HTML(通过文件覆盖)

匹配文件位置 /location/of/extraConfigs:/configs

打开settings.yml

可以修改默认语言等等。

可以参考:

security:
  enableLogin: false # 设置为 'true' 以启用登录
  csrfDisabled: true # 设置为 'true' 以禁用 CSRF 跨站请求伪造保护(不建议用于生产环境)
  loginAttemptCount: 5 # 尝试 5 次后锁定用户帐户;使用例如 Fail2Ban 时可以将该功能停用为 -1
  loginResetTimeMinutes: 120 # 尝试 x 次后锁定帐户 2 小时
  loginMethod: all # 'all'(登录用户名/密码和 OAuth2[必须启用和配置]),'normal'(仅使用用户名/密码登录),或 'oauth2'(仅使用 OAuth2 登录)
  initialLogin:
    username: 'admin' # 第一次登录的初始用户名
    password: 'admin' # 第一次登录的初始密码
  oauth2:
    enabled: false # 设置为 'true' 以启用登录(注意:enableLogin 必须为 'true' 才能工作)
    client:
      keycloak:
        issuer: '' # Keycloak 的 OpenID Connect Discovery 端点的 URL
        clientId: '' # Keycloak OAuth2 的客户端 ID
        clientSecret: '' # Keycloak OAuth2 的客户端密钥
        scopes: openid, profile, email # Keycloak OAuth2 的范围
        useAsUsername: preferred_username # 用作 Keycloak OAuth2 用户名的字段
      google:
        clientId: '' # Google OAuth2 的客户端 ID
        clientSecret: '' # Google OAuth2 的客户端密钥
        scopes: https://www.googleapis.com/auth/userinfo.email, https://www.googleapis.com/auth/userinfo.profile # Google OAuth2 的范围
        useAsUsername: email # 用作 Google OAuth2 用户名的字段
      github:
        clientId: '' # GitHub OAuth2 的客户端 ID
        clientSecret: '' # GitHub OAuth2 的客户端密钥
        scopes: read:user # GitHub OAuth2 的范围
        useAsUsername: login # 用作 GitHub OAuth2 用户名的字段
    issuer: '' # 设置为支持 OpenID Connect Discovery (/.well-known/openid-configuration) 端点的任何提供者
    clientId: '' # 从您的提供者获取的客户端 ID
    clientSecret: '' # 从您的提供者获取的客户端密钥
    autoCreateUser: false # 设置为 'true' 以允许自动创建不存在的用户
    blockRegistration: false # 设置为 'true' 以禁止未事先由管理员注册的 SSO 登录
    useAsUsername: email # 默认是 'email';可以使用自定义字段作为用户名
    scopes: openid, profile, email # 指定应用程序请求权限的范围
    provider: google # 设置为您的 OAuth 提供者名称,例如 'google' 或 'keycloak'

system:
  defaultLocale: 'en-US' # 设置默认语言(例如 'de-DE', 'fr-FR' 等)
  googlevisibility: false # 'true' 允许 Google 可见性(通过 robots.txt),'false' 不允许
  enableAlphaFunctionality: false # 设置以启用可能需要更多测试才能完全上线的功能(此功能可能不会产生变化)
  showUpdate: true # 查看是否有新更新可用
  showUpdateOnlyAdmin: false # 只有管理员可以看到是否有新更新可用,取决于 showUpdate 必须设置为 'true'
  customHTMLFiles: false # 启用以使放置在 /customFiles/templates 中的文件覆盖现有模板 html 文件

ui:
  appName: '' # 应用程序的可见名称
  homeDescription: '' # 主页上显示的简短说明或标语
  appNameNavbar: '' # 导航栏上显示的名称

endpoints:
  toRemove: [] # 要禁用的端点列表(例如 ['img-to-pdf', 'remove-pages'])
  groupsToRemove: [] # 要禁用的组列表(例如 ['LibreOffice'])

metrics:
  enabled: true # 'true' 启用 Info API (`/api/*`) 端点,'false' 禁用
  • 设置登入后,用户名:admin 密码:stirling,登录时,会强制将密码更改为新密码。
  • 还可以使用Github,Google和keycloak登入
  • 您还可以使用环境变量SECURITY_INITIALLOGIN_USERNAME 并 SECURITY_INITIALLOGIN_PASSWORD立即设置自己的环境变量(建议在创建用户后将其删除)。

这些设置不能保证是最新的,其他设置请参考项目GITHUB。

如果只是想修改网站名字的只要动UI哪里就可以了,其他可以保持默认。

利用宝塔面板反向代理

新建一个站点,什么都不用设置,纯静态即可。确保你已经完成了域名解析。

用宝塔自带的反向代理功能

Stirling PDF 安装与使用 - 强大的PDF操作工具,满足您的需求

查看上图的设置方法,把目标URL改成你实际使用的端口

Stirling PDF 更新与卸载

更新:

cd /root/data/docker_data/stirling_pdf  # 进入docker-compose所在的文件夹
docker-compose pull    # 拉取最新的镜像
docker-compose up -d   # 重新启动镜像

卸载:

sudo -i
cd /root/data/docker_data/stirling_pdf  # 进入docker-compose所在的文件夹
docker-compose down    # 停止容器,此时不会删除映射到本地的数据
cd ~
rm -rf /root/data/docker_data/stirling_pdf  # 完全删除映射到本地的数据

总结

使用Docker安装还是方便的,这个Stirling PDF功能挺多的,可以安装来使用,满足您的所有PDF需求。

正文完
 0

语言切换:繁體中文

iezx
版权声明:本站原创文章,由 iezx 于2024-04-08发表,共计4096字。
转载说明:除特别声明外,可自由引用,限于非商业用途,引用時请务必注明本文链接。
评论(没有评论)

小星博客

文章搜索

语言切换:繁體中文

一言一句话:

-「
最新评论
梦泽 梦泽 刚试过了,首页还显示优惠码,但是优惠码用不了,显示 The submitted promotion code does not match
iezx iezx TEST
iezx iezx 我并没有注册,你可以想到的域名都是溢价域名。
Study.Club Study.Club 你注册.ing了吗?
iezx iezx 已添加首页
建站经验分享 建站经验分享 我已添加了首页,大佬,添加首页把。
iezx iezx 已添加内页
建站经验分享 建站经验分享 贵站已经添加。
iezx iezx 换首页友链吗?麻烦添加一下本网站友链。谢谢!
建站经验分享 建站经验分享 大佬,交换一个友链,谢谢。 网站名称:建站经验分享 网站描述:建站经验分享主要关注建站教程及便宜建站主机促销活动以及当前最热门的网络资源。 网站地址:https://www.wn12.cn/

感谢你的观看!